#include <stdlib.h>
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <wait.h>


extern char**environ;

int main()
{
    char *const myenv[] = {
        "myenv1=2004",
        "myenv2=2005",
        "myenv3=2005",
        "myenv4=2005",
        NULL
    };
    //char *const env_val = "myenv=2004";
    //putenv(env_val);
    printf("exec command begin\n");
    execle("./myprocess", "myprocess", NULL, myenv);
    //pid_t id = fork();
    //if(id == 0)
    //{   
    //    printf("pid: %d, exec command begin\n", getpid());
    //    //execl("/usr/bin/bash", "bash", "test.sh", NULL);
    //    execl("./myprocess", "myprocess", NULL);
    //}
    //else{
    //    pid_t rid = waitpid(-1, NULL, 0);
    //    if(rid > 0)
    //    {
    //        printf("wait success, pid: %d\n", rid);
    //    }
    //}
    //char *const argv[] = {
    //    "ls",
    //    "-a",
    //    "-l",
    //    NULL
    //};
    //pid_t id = fork();
    //if(id == 0)
    //{
    //    printf("pid: %d, exec command begin\n", getpid());
    //    sleep(2);
    //    execvpp("ls", argv);
    //    //execl("ls", "ls", "-a", "-l", NULL);
    //    printf("pid: %d, exec command end\n", getpid());
    //    exit(1);
    //}
    //else{
    //    //pid_t rid = waitpid(-1, NULL, 0);
    //    //if(rid > 0)
    //    //{
    //    //    printf("wait success, pid: %d\n", rid);
    //    //}
    //}
    return 0;
}
